package com.solin.blog.web.controller;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.IOException;

/**
 * @Author solin
 * @Date 2022/1/10 14:33
 * @content 文件管理
 */
@RestController
@Slf4j
@Api(tags = "文件管理")
@RequestMapping("/file")
public class FileController {

    /**
     * 文件上传接口
     * 多个文件上传前端需要配置  enctype="multipart/form-data"
     * @param name
     * @param password
     * @param photoImg
     * @throws IOException
     */
    @ApiModelProperty("文件上传")
    @PostMapping("/upload")
    public void uploadFile(@RequestParam("name") String name, @RequestParam("password") String password,
                           @RequestPart("photoImg") MultipartFile photoImg
//            , @RequestPart("photos") MultipartFile[] photos
    ) throws IOException {

        log.info("name={},password={},photoImg={},photos={}", name, password, photoImg.getSize(), password.length());
        if (!photoImg.isEmpty()) {
            //获取文件文件名  保存到本地或者保存到oss
            String originalFilename = photoImg.getOriginalFilename();
            File file = new File("D:\\cache\\" + originalFilename);
            photoImg.transferTo(file);
        }
//        if (photos.length>0) {
//            for (MultipartFile photo : photos) {
//                if (photo.isEmpty()) {
//                    //获取文件文件名
//                    String originalFilename = photo.getOriginalFilename();
//                    File file = new File("D:\\cache" + originalFilename);
//                    if (file.exists()) {
//                        file.delete();
//                    }
//                    photo.transferTo(file);
//                }
//            }
//        }
    }
}
